package com.perkinelmer.housecall.client.activities.capture;

import com.google.gwt.user.client.ui.Panel;
import com.perkinelmer.housecall.client.model.Observation;
import com.perkinelmer.housecall.client.util.Identifier;

public interface Capture {
	
	public CaptureId getId();
	public String getName();
	public void start(Panel panel, CaptureParameter captureParameter);
	
	public interface CaptureCompleteCallback {
		public void captureComplete(Observation observation);
		public void captureCanceled();
	}
	
	public class CaptureId extends Identifier {
		
		public static CaptureId make(String name) {
			return new CaptureId(name);
		}
		
		private CaptureId(String name) {
			super(name);
		}
	}
}
